login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Javascript gallery met vorige | volgende knopjes

Offline Martijn2008 - 23/07/2009 23:02
Avatar van Martijn2008PHP beginner Beste Sitemasters,

Mijn idee is als volgt:

Ik wil graag een hele directory inlezen die vol staat met images. Nou lijkt het mij handig om alle url's naar de images vooraf weg te schrijven in javascript, zodat niet onnodig de server de hele tijd postbacks moet sturen, maar alleen de image. Het gaat erom dat wanneer ik op volgende of vorige klikt, dat ook echt de volgende of vorige afbeelding wordt opgehaald. Ik maak gebruik van JQuery. Heeft iemand een idee hoe ik zoiets kan maken?

Bedankt alvast voor jullie hulp!

Groeten,

Martijn

6 antwoorden

Gesponsorde links
Offline ibmos2warp - 23/07/2009 23:31
Avatar van ibmos2warp PHP interesse Gewoon die urls in een array'tje stoppen ofzo? Dat is het simpelste...
Offline Martijn2008 - 23/07/2009 23:36
Avatar van Martijn2008 PHP beginner Heb je misschien een voorbeeldje, want ik ben niet zo goed in javascript 
Offline ibmos2warp - 23/07/2009 23:41
Avatar van ibmos2warp PHP interesse Goh, google en w3schools bestaan ook niet meer...
Offline henver - 23/07/2009 23:44 (laatste wijziging 24/07/2009 00:00)
Avatar van henver HTML gevorderde ibmos2warp, doe effe normaal. Zulke dingen vind je niet op 123

vinTage schreef:
Hij gaf 2 goede links door, dus gelieve het moderen aan ons over te laten 
Offline ibmos2warp - 23/07/2009 23:47
Avatar van ibmos2warp PHP interesse
henver schreef:
ibmos2warp, doe effe normaal. Zulke dingen vind je niet op 123

Nee, niet op 213, maar wel op w3schools met google...
Offline snxs - 24/07/2009 03:41 (laatste wijziging 24/07/2009 03:44)
Avatar van snxs Nieuw lid Met php kun je een directory uitlezen, en de array in bijvoorbeeld javascript zetten.

Ik was weer lekker bezig dus heb een hele class als voorbeeld gegeven, die niet alleen een JS array kan maken, maar ook PHP en JSON return kan geven.
  1. <?php
  2. /*
  3. ##########################################################
  4. # Serve file list Class v0.1 #
  5. # #
  6. # Filename: getFiles.php #
  7. # #
  8. # Author: Guido Bouman #
  9. # Copyright: Guido Bouman Web Development #
  10. # Date: 24-07-2009 #
  11. # #
  12. # Dependencies: #
  13. # - None #
  14. ##########################################################
  15.  
  16. ##########################################################
  17. # TODO: #
  18. # #
  19. # - Nothing #
  20. # #
  21. # NOTES: #
  22. # #
  23. # - None #
  24. ##########################################################
  25.  
  26. ##########################################################
  27. # Description: #
  28. # #
  29. # This class takes care of getting a list of files #
  30. # and outputting it in the desired type. #
  31. # JS, PHP, JSON or any other type you can imagine #
  32. ##########################################################
  33. */
  34.  
  35. class getFiles
  36. {
  37. private static $buffer;
  38.  
  39. public function JS($dir,$arrayName)
  40. {
  41. self::$buffer = "";
  42.  
  43. self::$buffer .= "<script type=\"text/javascript\">".PHP_EOL;
  44. self::$buffer .= "var ".$arrayName." = new Array(".PHP_EOL;
  45.  
  46. $files = self::read($dir,"files");
  47. $keys = array_keys($files);
  48. $last = end($keys);
  49. foreach($files as $key => $val)
  50. {
  51. self::$buffer .= "\"".$val."\"";
  52. if($key !== $last)
  53. {
  54. self::$buffer .= ",";
  55. }
  56. self::$buffer .= PHP_EOL;
  57. }
  58.  
  59. self::$buffer .= ");".PHP_EOL;
  60. self::$buffer .= "</script>".PHP_EOL;
  61.  
  62. return self::$buffer;
  63. }
  64.  
  65. public function PHP($dir)
  66. {
  67. self::$buffer = self::read($dir,"files");
  68. return self::$buffer;
  69. }
  70.  
  71. public function JSON($dir,$arrayName)
  72. {
  73. self::$buffer = "";
  74.  
  75. self::$buffer .= "[";
  76.  
  77. $files = self::read($dir,"files");
  78. $keys = array_keys($files);
  79. $last = end($keys);
  80. foreach($files as $key => $val)
  81. {
  82. self::$buffer .= "\"".$val."\"";
  83. if($key !== $last)
  84. {
  85. self::$buffer .= ",";
  86. }
  87. }
  88.  
  89. self::$buffer .= "]";
  90.  
  91. return self::$buffer;
  92. }
  93.  
  94. private function read($dir,$type = "")
  95. {
  96. $files=array();
  97. $dirs=array();
  98.  
  99. $uitlees=opendir($dir);
  100. while(($result = readdir($uitlees))!= false)
  101. {
  102. if(is_file($dir."/".$result)){
  103. $files[] = $result;
  104. }elseif(is_dir($dir."/".$result)){
  105. if($result != "." && $result != ".."){
  106. $dirs[] = $result;
  107. }
  108. }
  109. }
  110. closedir($uitlees);
  111.  
  112. sort($files);
  113. sort($dirs);
  114.  
  115. if($type == "files"){
  116. return $files;
  117. }elseif($type == "dirs"){
  118. return $dirs;
  119. }elseif($type == "both" || empty($type)){
  120. return array_merge($dirs,$files);
  121. }
  122. }
  123. ?>


Werking:
  1. <?php
  2. include("getFiles.php");
  3. echo getFiles::JS("Je directory","JavaScript Array naam");
  4. ?>


Dit zal een stukje html echo-en met in script tags een javascript array. De array heeft de naam die je op gaf. Dit kan je dan weer gebruiken in bijvoorbeeld je jQuery.

Mijn methode is niet perfect, het kan nog veel flexibeler opgezet worden. Maar ik probeer hier een beeld te schetsen van de mogelijkheden.

Voor jou kan het natuurlijk nog veel simpeler, maar ik probeer ook meteen een beetje horizon verbreding mee te geven.  
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.219s